In various storage systems a memory controller operating in accordance with a logical address space stores data in one or more non-volatile memory devices operating in accordance with a physical address space. The memory controller typically holds, in a volatile memory, a logical-to-physical mapping table for translating between the logical and physical addresses. To protect the translation information from being lost, e.g., in case of power shutdown, the memory controller typically backs-up the translation table in the volatile memory devices.
Methods for saving and recovering logical-to-physical translation information are known in the art. For example, U.S. Patent Application Publication 2009/0327589, whose disclosure is incorporated herein by reference, describes a method of table journaling in a flash storage device comprising a volatile memory and a plurality of non-volatile data blocks. Methods described include the steps of creating a first copy in a first one or more of the plurality of non-volatile data blocks of an addressing table stored the volatile memory, writing transaction log data to a second one or more of the plurality of non-volatile data blocks, and updating the first copy of the addressing table based on changes to the addressing table stored in the volatile memory after the second one or more of the plurality of non-volatile data blocks have been filled with transaction log data.
U.S. Pat. No. 8,909,851, whose disclosure is incorporated herein by reference, describes a method of operation of a storage control system including: providing a memory controller; accessing a volatile memory table by the memory controller; writing a non-volatile semiconductor memory for persisting changes in the volatile memory table; and restoring a logical-to-physical table in the volatile memory table, after a power cycle, by restoring a random access memory with a logical-to-physical partition from a most recently used list.